package com.softer.wxzj.mapper;

import com.softer.wxzj.entity.BaseBuildInfo;
import com.softer.wxzj.entity.BaseHouseInfo;
import com.softer.wxzj.entity.BaseRegionInfo;
import com.softer.wxzj.entity.DepNotice;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author Gong Zhiyang
 * @date 2020/8/5
 */
@Repository
public interface DepositContinuationMapper {
    /**
     * 查询续交小区列表
     *
     * @param baseRegionInfo 查询信息
     * @return 续交小区列表
     */
    List<BaseRegionInfo> getContinuationRegionList(BaseRegionInfo baseRegionInfo);

    /**
     * 查询续交自然幢列表
     *
     * @param baseBuildInfo 查询信息
     * @return 续交自然幢列表
     */
    List<BaseBuildInfo> getContinuationBuildList(BaseBuildInfo baseBuildInfo);

    /**
     * 查询续交房屋列表
     *
     * @param baseHouseInfo 查询信息
     * @return 续交房屋列表
     */
    List<BaseHouseInfo> getContinuationHouseList(BaseHouseInfo baseHouseInfo);

    /**
     * 重置交存模式
     *
     * @param houseId 房间ID
     * @return 重置结果
     */
    int resetModeType(String houseId);

    /**
     * 修改状态
     *
     * @param depNotice 通知信息
     * @return 修改结果
     */
    int updateState(DepNotice depNotice);

    /**
     * 保存续交模式
     *
     * @param list 维护续交模式的房间列表
     * @return 保存结果
     */
    int addDepNotice(@Param("list")List<DepNotice> list);

    /**
     * 查询续交待审核列表
     *
     * @param baseHouseInfo 查询实体
     * @return 续交待审核列表
     */
    List<BaseHouseInfo> getAuditList(BaseHouseInfo baseHouseInfo);
    /**
     * 续交查询列表
     *
     * @param baseHouseInfo 查询实体
     * @return 续交待审核列表
     */
    List<BaseHouseInfo> searchAuditList(BaseHouseInfo baseHouseInfo);
    /**
     * 查询续交撤销列表
     *
     * @param baseHouseInfo 查询实体
     * @return 续交撤销列表
     */
    List<BaseHouseInfo> getRevocationList(BaseHouseInfo baseHouseInfo);
    /**
     * 续交撤销查询
     *
     * @param baseHouseInfo 查询实体
     * @return 续交撤销查询
     */
    List<BaseHouseInfo> searchRevocationList(BaseHouseInfo baseHouseInfo);
}
